Human resource management systems maintain data related to employees. Such information includes information such as employee name, address, salary data, benefit data, vacation balances, tax data, and other data related to employment. This data is stored in databases having one record per employee.
However, storing employee data in a single record prevents human resource management systems from providing data access and processing flexibility. For example, if a payroll batch process is running, the payroll process locks all affected employee records until the payroll batch process is complete to prevent interim updates to the payroll data.
This lack of flexibility causes further issues. For example, if an employee, such as a teacher, has a work agreement covering a nine-month school year and another agreement covering a summer term, current human resource management systems do not provide a simple solution. A work around is used in some such systems by creating multiple employee records. However, this presents other issues such as maintaining redundant data between the two employee records that requires synchronization in the event of an update, such as an update to an employee's home address.
Another issue can arise in a situation where an employer has multiple business units, subsidiaries, or has operations in multiple taxing jurisdictions, such as countries. If an employee in such an organization is employed by more than one business unit, subsidiary, or in multiple taxing jurisdictions, present systems require multiple employee records, one for each business unit, subsidiary, or taxing jurisdiction.